query getBlobInfo(
  $projectPath: ID!
  $filePath: String!
  $ref: String!
  $shouldFetchRawText: Boolean!
) {
  project(fullPath: $projectPath) {
    __typename
    id
    repository {
      __typename
      empty
      blobs(paths: [$filePath], ref: $ref) {
        __typename
        nodes {
          __typename
          id
          webPath
          name
          size
          rawSize
          rawTextBlob @include(if: $shouldFetchRawText)
          fileType
          language
          path
          blamePath
          editBlobPath
          gitpodBlobUrl
          ideEditPath
          forkAndEditPath
          ideForkAndEditPath
          codeNavigationPath
          projectBlobPathRoot
          forkAndViewPath
          environmentFormattedExternalUrl
          environmentExternalUrlForRouteMap
          canModifyBlob
          canCurrentUserPushToBranch
          archived
          storedExternally
          externalStorage
          externalStorageUrl
          rawPath
          replacePath
          pipelineEditorPath
          simpleViewer {
            fileType
            tooLarge
            type
            renderError
          }
          richViewer {
            fileType
            tooLarge
            type
            renderError
          }
        }
      }
    }
  }
}
